package com.ruoyi.system.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.valid.ValidInsertGroup;
import com.ruoyi.common.valid.ValidUpdateGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @Description TODO
 * @ClassName BsZhusu
 * @Author kenn
 * @Version 1.0.0
 * @Date 2023年10月17日 18:05:00
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
//@TableName("bs_zhusu")
@ApiModel(value = "住宿管理字段")
public class BsZhusu extends BaseEntity {

//    @TableId
    @ApiModelProperty("主键id")
    @NotNull(message = "主键id不能为空", groups = {ValidUpdateGroup.class})
    private Long id;

    @ApiModelProperty("名称")
    @NotBlank(message = "名称不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    private String name;

    @ApiModelProperty("地址")
    @NotBlank(message = "地址不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    private String address;

    @ApiModelProperty("标签")
    private String tag;

    @ApiModelProperty("联系方式")
    @NotBlank(message = "联系方式不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    private String phone;

    @ApiModelProperty("酒店/民宿图片")
    @NotBlank(message = "酒店/民宿图片不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    private String img;

    @ApiModelProperty("配套设施")
    private String supportingImg;

    @ApiModelProperty("类型 jiudian：酒店 minsu：民宿")
    @NotBlank(message = "类型不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    private String type;

    @ApiModelProperty("状态字典 关联字典code: business_status")
    @NotBlank(message = "状态不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    private String status;

    @ApiModelProperty("酒店政策")
    private String policyImg;

    @ApiModelProperty("所属景区id")
    @NotNull(message = "所属景区id不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    private Long jingquId;

    @ApiModelProperty("企业id")
    private Long qiyeId;

    @ApiModelProperty("逻辑删除字段 0：正常 1：删除")
    private String delFlag;

    @ApiModelProperty("所属景区名称")
    @TableField(exist = false)
    private String jingquName;

    @ApiModelProperty("状态")
    @TableField(exist = false)
    private String statusName;

    @ApiModelProperty("经纬度 格式：120.11,30.11")
    @NotBlank(message = "经纬度不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    @TableField(exist = false)
    private String addressDetail;

    @ApiModelProperty("营业时间")
    @NotBlank(message = "营业时间不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    @TableField(exist = false)
    private String businessTime;

    @ApiModelProperty("营业执照")
    @NotBlank(message = "营业执照不能为空", groups = {ValidInsertGroup.class, ValidUpdateGroup.class})
    @TableField(exist = false)
    private String businessLicenseImg;

}
